#include <windows.h>
#include <iostream>

void SimulateKeyPress(WORD key) {
    INPUT input[2] = {0};
    
    // 按下按键
    input[0].type = INPUT_KEYBOARD;
    input[0].ki.wVk = key; // 虚拟键码
    input[0].ki.dwFlags = 0; // 0表示按键按下
    input[0].ki.time = 0;
    input[0].ki.dwExtraInfo = 0;
    
    // 释放按键
    input[1].type = INPUT_KEYBOARD;
    input[1].ki.wVk = key;
    input[1].ki.dwFlags = KEYEVENTF_KEYUP; // KEYEVENTF_KEYUP表示按键释放
    input[1].ki.time = 0;
    input[1].ki.dwExtraInfo = 0;
    
    // 发送输入事件
    SendInput(2, input, sizeof(INPUT));
}

int main() {
    // 模拟按下并释放'A'键
    SimulateKeyPress(VkKeyScan('A'));
    std::cout << "模拟按下并释放了'A'键" << std::endl;
    return 0;
}